unit untFuncoesListagem;

interface


function atualizaTotal(local:String):String;


implementation

uses untDm, DB;


// ---------Apresenta a quantidade de cadastros ativos no banco
function atualizaTotal(local:String):String;
begin
  if local = 'cargo' then
    begin
      DM.SDSComando.CommandText := 'SELECT COUNT("cod_cargo") as codigo from "Cargo"';
      DM.SDSComando.Open;
      atualizaTotal := DM.SDSComando.FieldByName('codigo').AsString;
      DM.SDSComando.Close;
  end else if local = 'cidade' then
    begin
      DM.SDSComando.CommandText := 'SELECT COUNT(COD_CIDADE) as codigo from "Cidade"';
      DM.SDSComando.Open;
      atualizaTotal := DM.SDSComando.FieldByName('codigo').AsString;
      DM.SDSComando.Close;

  end else if local = 'cliente' then
    begin
      DM.SDSComando.CommandText := 'SELECT COUNT("cod_cli") as codigo from "Cliente" where "deletado" = :deletado and "situacao" = :situacao';
      DM.SDSComando.ParamByName('deletado').AsString := '0';
      DM.SDSComando.ParamByName('situacao').AsString := 'ATIVO';
      DM.SDSComando.Open;
      atualizaTotal := DM.SDSComando.FieldByName('codigo').AsString;
      DM.SDSComando.Close;

  end else if local = 'dados' then
    begin
      DM.SDSComando.CommandText := 'SELECT COUNT("cod_empresa") as codigo from "Cliente"';
      DM.SDSComando.Open;
      atualizaTotal := DM.SDSComando.FieldByName('codigo').AsString;
      DM.SDSComando.Close;

  end else if local = 'fornecedor' then
    begin
      DM.SDSComando.CommandText := 'SELECT COUNT("cod_for") as codigo from "Fornecedor" where "deletado" = :deletado and "situacao_for" = :situacao';
      DM.SDSComando.ParamByName('deletado').AsString := '0';
      DM.SDSComando.ParamByName('situacao').AsString := 'ATIVO';
      DM.SDSComando.Open;
      atualizaTotal := DM.SDSComando.FieldByName('codigo').AsString;
      DM.SDSComando.Close;

  end else if local = 'funcionario' then
    begin
      DM.SDSComando.CommandText := 'SELECT COUNT("cod_fun") as codigo from "Funcionario" where "deletado" = :deletado and "situacao" = :situacao';
      DM.SDSComando.ParamByName('deletado').AsString := '0';
      DM.SDSComando.ParamByName('situacao').AsString := 'ATIVO';
      DM.SDSComando.Open;
      atualizaTotal := DM.SDSComando.FieldByName('codigo').AsString;
      DM.SDSComando.Close;

  end else if local = 'produto' then
    begin
      DM.SDSComando.CommandText := 'SELECT COUNT("cod_prod") as codigo from "Produto" where "deletado" = :deletado and "situacao_prod" = :situacao';
      DM.SDSComando.ParamByName('deletado').AsString := '0';
      DM.SDSComando.ParamByName('situacao').AsString := 'ATIVO';
      DM.SDSComando.Open;
      atualizaTotal := DM.SDSComando.FieldByName('codigo').AsString;
      DM.SDSComando.Close;
  end;


end;

end.
